let obj = {}
// 我希望用户只要获取PI  就打印哈哈
// 用户只要改了PI  就打印哈呵呵
// class的实现 vue mvvm mobx 装饰器 koa
Object.defineProperty(obj,'PI', {
  enumerable: true,// 可枚举
  // writable: true, // 不能重新复制如果为false
  // value: 3.14,
  // configurable: true, // true是可以删除的
  get() {
    console.log('哈哈')
    return 3.15
  },
  set(val) {
    console.log('呵呵呵')
  }
})

obj.PI = 888
// delete obj.PI
console.log(obj.PI)

// 简写方法
let obj = {
  temp: '',
  get PI() {
    console.log('哈哈')
    return this.temp
  },
  set PI(val){
    console.log('呵呵')
    this.temp = val
  }
}

obj.PI = 200
console.log(obj.PI)
console.log(obj.temp)
